{extend name="../../base/view/common/base" /}
{block name="body"}
<div class="layui-fluid" style="padding-top: 20px;">
    <div class="layui-card">
        <div class="layui-card-body">
            <form class="layui-form toolbar" id="searchForm">
                <div class="layui-form-item">
                    <div class="layui-inline">
                        <input type="text" name="keywords" placeholder="输入名称/地址" class="layui-input">
                    </div>
                    <div class="layui-inline">
                        <button class="layui-btn layui-btn-normal layui-btn-sm" lay-submit lay-filter="searchForm">
                            <i class="layui-icon">&#xe615;</i>搜索
                        </button>
                        <button type="button" class="layui-btn layui-btn-primary layui-btn-sm" id="resetBtn">
                            <i class="layui-icon">&#xe669;</i>清空
                        </button>
                    </div>
                </div>
            </form>
            <div class="layui-btn-container" style="margin-top: 10px;">
                <button class="layui-btn layui-btn-sm layui-btn-success" id="addBtn">
                    <i class="layui-icon">&#xe654;</i>新增法院
                </button>
            </div>
            <table id="courtTable" lay-filter="courtTable"></table>
        </div>
    </div>
</div>

<script>
const moduleInit = ['tool']; // 确保 tool 模块已加载

function gouguInit() {
    table = layui.table,
    form = layui.form,
    layer = layui.layer,
    tool = layui.tool, // 确保 tool 对象已初始化
    util = layui.util;

    // 初始化表格
    table.render({
        elem: '#courtTable',
        url: '/lawcase/court/index',
        method: 'GET',
        page: true,
        cols: [[
            {field: 'id', title: 'ID', width: 80},
            {field: 'name', title: '法院名称', minWidth: 150},
            {field: 'level_text', title: '级别', width: 100},
            {field: 'full_address', title: '详细地址', minWidth: 200},
            {field: 'case_count', title: '关联案件', width: 100},
            {title: '操作', toolbar: '#operateBar', width: 150, fixed: 'right'}
        ]],
        parseData: function (res) {
            return {
                "code": res.code,
                "msg": res.msg,
                "count": res.count,
                "data": res.data
            };
        }
    });

    // 新增法院按钮点击事件
    $('#addBtn').on('click', function() {
        if (typeof tool.side === 'function') {
            tool.side('/lawcase/court/add', '新增法院');
        } else {
            console.error('tool.side 方法未定义');
        }
    });

    // 监听工具栏事件
    table.on('toolbar(courtTable)', function (obj) {
        if (obj.event === 'add') {
            if (typeof tool.side === 'function') {
                tool.side('/lawcase/court/add', '新增法院');
            } else {
                console.error('tool.side 方法未定义');
            }
        }
    });

    // 表格行工具事件
    table.on('tool(courtTable)', function (obj) {
        var data = obj.data;
        if (obj.event === 'edit') {
            tool.side('/lawcase/court/edit?id=' + data.id, '编辑法院');
        } else if (obj.event === 'del') {
            layer.confirm('确定要删除该法院吗？', function (index) {
                tool.delete('/lawcase/court/delete', {id: data.id}, function (res) {
                    if (res.code === 0) {
                        layer.msg(res.msg || '删除成功');
                        obj.del(); // 刷新表格
                    } else {
                        layer.msg(res.msg || '删除失败');
                    }
                });
                layer.close(index);
            });
        }
    });

    // 搜索表单提交
    form.on('submit(searchForm)', function (data) {
        table.reload('courtTable', {
            where: data.field,
            page: {curr: 1}
        });
        return false;
    });

    // 修复重置功能
    form.on('reset(searchForm)', function () {
        console.log('表单已重置'); // 添加调试日志
        table.reload('courtTable', {
            where: {}, // 清空查询条件
            page: {curr: 1} // 重置到第一页
        });
        return false; // 阻止默认行为
    });
    
    // 重置按钮
    $('#resetBtn').on('click', function() {
        $('#searchForm')[0].reset();
        table.reload('courtTable', {
            where: {
                keywords: ''
            },
            page: {
                curr: 1 // 重置到第一页
            }
        });
    });
}
</script>
{/block}

{block name="script"}
<script type="text/html" id="operateBar">
    <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
</script>

{/block}